package com.tpp.threat_perception_platform.pojo;

import java.util.Date;

/**
 * 
 * @TableName host_system_vul
 */
public class HostSystemVul {
    /**
     * 
     */
    private Integer id;

    /**
     * 
     */
    private String macAddress;

    /**
     * 
     */
    private String systemVulName;

    /**
     * 
     */
    private String systemVulDesc;

    /**
     * 
     */
    private Integer status;

    /**
     * 
     */
    private String extraInfo;

    /**
     * 
     */
    private Date detectTime;

    /**
     * 
     */
    public Integer getId() {
        return id;
    }

    /**
     * 
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 
     */
    public String getMacAddress() {
        return macAddress;
    }

    /**
     * 
     */
    public void setMacAddress(String macAddress) {
        this.macAddress = macAddress;
    }

    /**
     * 
     */
    public String getSystemVulName() {
        return systemVulName;
    }

    /**
     * 
     */
    public void setSystemVulName(String systemVulName) {
        this.systemVulName = systemVulName;
    }

    /**
     * 
     */
    public String getSystemVulDesc() {
        return systemVulDesc;
    }

    /**
     * 
     */
    public void setSystemVulDesc(String systemVulDesc) {
        this.systemVulDesc = systemVulDesc;
    }

    /**
     * 
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 
     */
    public String getExtraInfo() {
        return extraInfo;
    }

    /**
     * 
     */
    public void setExtraInfo(String extraInfo) {
        this.extraInfo = extraInfo;
    }

    /**
     * 
     */
    public Date getDetectTime() {
        return detectTime;
    }

    /**
     * 
     */
    public void setDetectTime(Date detectTime) {
        this.detectTime = detectTime;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        HostSystemVul other = (HostSystemVul) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getMacAddress() == null ? other.getMacAddress() == null : this.getMacAddress().equals(other.getMacAddress()))
            && (this.getSystemVulName() == null ? other.getSystemVulName() == null : this.getSystemVulName().equals(other.getSystemVulName()))
            && (this.getSystemVulDesc() == null ? other.getSystemVulDesc() == null : this.getSystemVulDesc().equals(other.getSystemVulDesc()))
            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
            && (this.getExtraInfo() == null ? other.getExtraInfo() == null : this.getExtraInfo().equals(other.getExtraInfo()))
            && (this.getDetectTime() == null ? other.getDetectTime() == null : this.getDetectTime().equals(other.getDetectTime()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getMacAddress() == null) ? 0 : getMacAddress().hashCode());
        result = prime * result + ((getSystemVulName() == null) ? 0 : getSystemVulName().hashCode());
        result = prime * result + ((getSystemVulDesc() == null) ? 0 : getSystemVulDesc().hashCode());
        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
        result = prime * result + ((getExtraInfo() == null) ? 0 : getExtraInfo().hashCode());
        result = prime * result + ((getDetectTime() == null) ? 0 : getDetectTime().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", macAddress=").append(macAddress);
        sb.append(", systemVulName=").append(systemVulName);
        sb.append(", systemVulDesc=").append(systemVulDesc);
        sb.append(", status=").append(status);
        sb.append(", extraInfo=").append(extraInfo);
        sb.append(", detectTime=").append(detectTime);
        sb.append("]");
        return sb.toString();
    }
}